Methods and systems for reducing piracy of media content

ABSTRACT

Techniques for reducing piracy of media content are described. In some embodiments, a collusion resistant method is performed at a device, where the device receives a first request for a base copy of a media content item. In response, the device determines a first transformation based on a statistical performance criterion and a viewing performance criterion. The device further generates a first copy of the media content item by replicating and applying a first transformation to the base copy, where the first copy of the media content item satisfies the viewing performance criterion, and the first copy of the media content item is statistically different from the base copy or other copies in accordance with the statistical performance criterion. The device then causes transmission of the first copy of the media content item in combination with a first watermark for the base copy of the media content item.

TECHNICAL FIELD

The present disclosure relates generally to reducing piracy of mediacontent.

BACKGROUND

The process of hiding or embedding information in media contentgenerally comes under the category of watermarking. Digital watermarking(sometimes also known as “forensic watermarking”) typically refers tothe watermarking process where the embedded data identifies a mediacontent item itself, as well as the content owner, operators,redistribution networks, and/or consumer devices associated with thedistribution and consumption of the media content item. For example, incase a user leaks certain media content, his/her identity (ID) may betraced using embedded data. The watermark identifier is often encoded inan imperceptible manner while still allowing recovery of the watermarkidentifier even if the media content is modified.

One type of attack on watermarks is collusion attack. When the mediacontent item is a video, collusion attacks typically work by gatheringcopies of the same video, each embedded with a unique watermark,colluding these copies, and generating a video that is a combination ofthe original copies. The combination may yield to the watermarkcorruption, thus making the watermark detection difficult or evenimpossible.

BRIEF DESCRIPTION OF THE DRAWINGS

So that the present disclosure can be understood by those of ordinaryskill in the art, a more detailed description may be had by reference toaspects of some illustrative embodiments, some of which are shown in theaccompanying drawings.

FIG. 1 is a block diagram of an exemplary collusion resistant system inaccordance with some embodiments;

FIGS. 2A-2C are block diagrams of exemplary configurations of collusionresistant systems in accordance with some embodiments;

FIG. 3 is a block diagram illustrating one transformation technique inaccordance with some embodiments;

FIG. 4 is a diagram illustrating various transformation techniques inaccordance with some embodiments;

FIG. 5 is a diagram illustrating various other transformation techniquesin accordance with some embodiments;

FIG. 6 is a diagram illustrating an exemplary collusion resistant systemwhere transformations are applied in a headend in accordance with someembodiments;

FIG. 7 is a diagram illustrating transitioning between transformationswith fading in and fading out in accordance with some embodiments;

FIG. 8 is a diagram illustrating aligning transitions of transformationswith scene change in accordance with some embodiments; and

FIGS. 9A and 9B are flowcharts illustrating a collusion resistant methodin accordance with some embodiments.

In accordance with common practice the various features illustrated inthe drawings may not be drawn to scale. Accordingly, the dimensions ofthe various features may be arbitrarily expanded or reduced for clarity.In addition, some of the drawings may not depict all of the componentsof a given system, method or device. Finally, like reference numeralsmay be used to denote like features throughout the specification andfigures.

DESCRIPTION OF EXAMPLE EMBODIMENTS

Numerous details are described in order to provide a thoroughunderstanding of the example embodiments shown in the drawings. However,the drawings merely show some example aspects of the present disclosureand are therefore not to be considered limiting. Those of ordinary skillin the art will appreciate that other effective aspects and/or variantsdo not include all of the specific details described herein. Moreover,well-known systems, methods, components, devices and circuits have notbeen described in exhaustive detail so as not to obscure more pertinentaspects of the example embodiments described herein.

Overview

Collusion resistant techniques described herein de-motivate colluders inorder to reduce media content piracy. Previously existing anti-collusionmechanisms focus on making more robust watermarks that can survivevarious collusion attacks. The collusion resistant techniques describedherein degrade the quality of the media content item upon collusion andat the same time preserve the embedded watermarks. Moreover, thecollusion resistant techniques described herein maintain the quality ofthe media content item for legitimate users, e.g., viewers notcolluding. In some embodiments, a system in accordance with embodimentsdescribed herein generates multiple copies of a media content item andapplies different transformations to each copy. As a result, when acolluder attempts to combine multiple copies of the video, the output isa video with downgraded quality that makes the pirated video notattractive. Such a solution is independent of the underlying watermarktechnique, robust against collusion techniques (including new collusiontechniques that may be developed in the future), and yet at the sametime does not downgrade the video quality for legitimate users and doesnot degrade the detectability of the original watermark.

In accordance with various embodiments, a method is performed at adevice including a processor and a non-transitory memory. The methodincludes receiving a first request for a base copy of a media contentitem. The method further includes determining, in response to the firstrequest, a first transformation based on a combination of a statisticalperformance criterion and a viewing performance criterion that is setrelative to a view performance characterization of the base copy of themedia content item. The method also includes generating a first copy ofthe media content item by replicating and applying a firsttransformation to the base copy of the media content item, where thefirst copy of the media content item satisfies the viewing performancecriterion, and the first copy of the media content item is statisticallydifferent from the base copy of the media content item in accordancewith the statistical performance criterion. The method additionallyincludes causing transmission of the first copy of the media contentitem in combination with a first watermark for the base copy of themedia content item.

In accordance with various embodiments, a method is performed at adevice including a processor and a non-transitory memory. The methodincludes receiving a first request for a base copy of a media contentitem. The method also includes determining a first transformation basedon a combination of a statistical performance criterion and a viewingperformance criterion that is set relative to a view performancecharacterization of the base copy of the media content item. The methodadditionally includes generating a first copy of a media content item byreplicating and applying the first transformation to a base copy of themedia content item, where the first copy of the media content itemsatisfies the viewing performance criterion and the first copy of themedia content item is statistically different from the base copy of themedia content item and previously generated copies of the media contentitem generated by the device in accordance with the statisticalperformance criterion. The method further includes transmitting thefirst copy of the media content item in combination with a firstwatermark to one or more display devices.

Example Embodiments

As explained above, piracy of media content often attacks watermarks.One technique involves collusion attack, in which a few copies of thesame media content item, each embedded with a different uniquewatermark, collude. In case of video content, a colluder often usesdevices to synchronize video inputs. As one or more collusion attackdevices compare the videos and align them, the difference is assumed tobe the watermark. The colluder then generates a new video by modifyingor manipulating the parts that are different between the video inputsand applying an alteration. Once the watermark is removed, piracyactivities are undetected. Piracy of media content often applies variousalteration techniques, e.g., at the pixel level, over parts of a frame,or over a sequence of frames, in order to corrupt the watermarks.

For example, at the pixel level, a colluder may, for a respective pixel,produce the average value of the respective pixel over the differentcopies, e.g., having 3 copies each with respective pixel values of 1, 2,and 6, and producing a pixel value of 3. In another example, a colludermay, for a respective pixel, produce the minority or majority value ofthe respective pixel over the different copies, e.g., having 3 copieseach with respective pixel values of 1, 3, and 3, and producing a pixelvalue of 1 in case of a minority strategy or 3 in case of a majoritystrategy. Some piracy techniques alter parts of a frame. For example,using a tiling alteration technique, a colluder may split the screen toY parts, where every part is taken from a different copy. Tiling resultsin having parts of different watermarks in the video but no completewatermark. Some other piracy techniques alter a sequence of frames. Forexample, by alternating frames, a colluder may create a new stream usingX frames from a first copy and then Y frames from a second copy. Forwatermark techniques that spread the watermark over a sequence offrames, alternating frames results in either no watermark identifier ora false positive. Other possible collusion techniques, such as machinelearning based collusions and/or a combination of collusion techniquesimplemented at a point in time and/or over time, can be used by acolluder to attack watermarks.

FIG. 1 illustrates an exemplary collusion resistant system 100 inaccordance with some embodiments. In some embodiments, the collusionresistant system 100 obtains a base copy 105 of a media content itemfrom a storage 101 storing media content. In some embodiments, a mediacontent item stored in the storage 101 includes any suitable media data,for example, visual data, audio data, and/or text, etc. In someembodiments, the media content item, which can be live or from apre-recorded source is stored in clear in the storage 101, thus allowingthe base copy 105 of the media content item to be reused in differentformats (e.g., different encoding formats for OTT content) and to bepackaged dynamically by the packager/encoder. In some embodiments, themedia content item can be encoded as MPEG-2, MPEG-4, MP3, AC-3, and/orany other suitable format.

In some embodiments, the collusion resistant system 100 includes areceiver 102 for receiving requests for the media content item, anembedder 110 for embedding watermarks and a transformer 120 fortransforming the media content item 105. In some embodiments, thecollusion resistant system 100 further includes a transmitter 130 tosend copies of the transformed watermark embedded media content item,e.g., copy 1 of transformed watermark embedded media content item 140-1,copy 2 of transformed watermark embedded media content item 140-2, . . ., copy x of transformed watermark embedded media content item 140-x, andcopy y of transformed watermark embedded media content item 140-y(collectively referred to as copies of the transformed watermarkembedded media content item 140 or copies 140). Among the copies 140,some copies, e.g., copy x 140-x and copy y 140-y, are sent in responseto requests from one or more legitimate users 190, e.g., one or morepaid subscribers. In case a colluder 180 attempts collusion attacks byrequesting multiple copies from the collusion resistant system 100, thecollusion resistant system 100 sends at least two copies, e.g., copy 1140-1 and copy 2 140-2, to the colluder 180.

In some embodiments, the embedder 110 embeds watermark(s) in the mediacontent item 105. As explained above, the watermarking process typicallyinvolves modifying the media content item 105 to encode a watermarkidentifier in an imperceptible manner while still allowing recovery ofthe watermark identifier even if the media content item is modified. Thewatermark identifier can be used to identify operators, redistributionnetworks, and/or user devices. There are two major approaches towatermark integrations. One operates in a single step (also referred toas single-step watermarking) and the other has a preprocessing step(also referred to as two-step watermarking or A/B watermarking).Further, there are two major approaches for watermark deployments, i.e.,a client-based approach and a server-based approach.

In single-step watermarking, each of the copies 140 has a uniquelyembedded watermark. Single-step watermarking is typically used inclient-based deployments. However, it can also be integrated within avideo encoder, e.g., for postproduction or screeners, to embed a smallnumber of unique watermark variants. In two-step watermarking, abitstream is used to facilitate the watermarking. In other words, eachelement of the original media content item (e.g., each segment in avideo stream) is a bit in the bitstream. The bitstream is encoded byusing a small number, typically two, variants of the original mediacontent item. In some embodiments, the variants are generated in apreprocessing step. The variants can be seen as pre-watermarkedvariations of the original media content item. In the second step ofsuch embodiments, the bitstream is created by interchangeably useportions, e.g., segments, chunks, fragments, or packets, of each mediacontent item variation. As used herein, the terms “segment”, “fragment”,and “chunk” are used interchangeably, unless otherwise explicitly noted.Alternatively, in some other embodiments, the two variants are notgenerated during the preprocessing step. Instead, the original mediacontent item is preprocessed to identify and instructions for variantgeneration are generated. In such alternative embodiments, both variantgeneration and the sequencing are performed in the second step. Thepreprocessing step is typically implemented in the video encodingheadend. The second step may be implemented in other components of themedia chain, e.g., at an encoder, a packager, a multiplexer, anover-the-top (OTT) origin server, an OTT playlist server, a contentdistribution network (CDN) server (central or edge), or a client device.

In some embodiments, the transformer 120 applies differenttransformations to the base copy 105 in response to different requests,i.e., copy 1 140-1 is different from copy 2 140-2. When the colluder 180attempts to generate an output video by combining multiple copies, e.g.,copy 1 140-1 and copy 2 140-2, the output is a media content item withdowngraded quality 150, e.g., to the level that makes the pirated copyundesirable. On the other hand, for legitimate user(s) 190, thetransformations by the transformer 120 do not downgrade the quality. Inthe exemplary collusion resistant system 100, copy x of transformedwatermark embedded media content item 140-x and copy y of transformedwatermark embedded media content item 140-y satisfy a viewingperformance criterion that is set relative to a viewing performancecharacterization of the base copy of the media content item 105. Assuch, the transformations by the transformer 120 have a minor effect onthe final media content item video for display to the legitimate user(s)190.

As will be shown below with reference to FIGS. 2A-2C, the transformationof the base copy 105 by the transformer 120 is independent of thewatermarking techniques utilized by the embedder 110, e.g., whether thewatermarking is deployed at a headend or a client device and/oraccording to single-step watermarking or two-step watermarking. Further,the transformation of the base copy 105 by the transformer 120 can beapplied before or after the watermark embedding. When thetransformations are applied after embedding the watermarks, since thetransformations have a minor effect on the final video, any watermarkthat meets the minimal requirements for watermark robustness is notexpected to be harmed as a result of the transformations. As such, thesolution described herein in accordance with various embodiments doesnot degrade the original watermark detectability.

As explained above, the assumption of any collusion attack is thatmultiple copies of the media content are aligned and the only differenceis the watermark. The collusion resistant methods and systems disclosedherein cause misalignment among the multiple copies. As a result, anycollusion techniques on the transformed media content would produce apoor viewing experience and hence preventing the pirates from generatingincome on a paid subscriber basis and avoiding being detected. Forexample, using a tiling alteration technique, the colluder 180 may splitthe screen to Y parts (e.g., 2 parts as shown in FIG. 1), where everypart is taken from a different copy (e.g., the top part from copy 1140-1 and the bottom part from copy 2 140-2). The combined copy 150 fromthe two parts produces a distorted basketball image. A colluder mightmanually recover from some of the transformations and provide a decentviewing experience to the viewers. However, the manual approach wouldadd significant cost and effort to the piracy operation. Furthermore, aswill be described in detail below, in some embodiments, varyingtransformations over time would make such manual recovery nearlyimpossible and not worthwhile.

It should be noted that components are represented in the exemplarycollusion resistant system 100 for illustrative purposes. The system 100can include more, less, and/or different elements than shown in FIG. 1in various embodiments. For example, the system 100 may also include oneor more encoders, packagers, and/or multiplexers, an OTT server, an OTTplaylist server, and/or one or more CDNs, etc. Further, elements can bedivided, combined, and/or re-configured to perform the collusionresistant functions described herein. Additionally, each of the elementsof system 100 includes appropriate hardware, software, and/or firmwareto perform the operations attributed to the elements herein. Someexamples of appropriate hardware, software, and/or firmware for certainelements will be provided further below. Operation(s) attributed to anelement of system 100 herein should not be considered binding and insome embodiments, other element(s) in the system 100 may additionally oralternatively perform such operation(s).

Further, although a single media content storage 101, a single receiver102, a single embedder 110, a single transformer 120, and a singletransmitter 130 are illustrated in FIG. 1, the system 100 may includeone or more media content storages 101, one or more receivers 102, oneor more embedders 110, one or more transformers 120, and one or moretransmitters 130. For the sake of simplicity, the subject matter will bedescribed hereinafter for the most part with reference to a single mediacontent storage 101, a single receiver 102, a single embedder 110, asingle transformer 120, and a single transmitter 130. In someembodiments, one or more receivers 102, one or more embedders 110, oneor more transformers 120, and one or more transmitters 130 aredistributed on multiple devices. For example, a headend may have one ormore receivers 102, one or more embedders 110, one or more transformers120, and one or more transmitters 130 distributed across one or moreservers. In another example, one or more client devices may have one ormore receivers 102, one or more embedders 110, one or more transformers120, and one or more transmitters 130 on one or more client devices.

FIGS. 2A-2C are block diagrams illustrating various configurations ofcollusion resistant systems 200A-200C in accordance with someembodiments. In FIG. 2A, a headend 210A includes a receiver 102A (e.g.,the receiver 102, FIG. 1) for receiving one or more requests for one ormore media content items from one or more client devices, an embedder110A (e.g., the embedder 110, FIG. 1), a transformer 120A (e.g., thetransformer 120, FIG. 1) for transforming media content items, and atransmitter 130A (e.g., the transmitter 130, FIG. 1) for sending copiesof transformed watermark embedded media content items to client devicesin accordance with some embodiments. In some embodiments, the embedder110A applies single-step, two-step, or other watermarking techniques toembed watermarks in media content items from the headend 210A. In someembodiments, in headend based watermarking, e.g., the two-stepwatermarking, the headend 210A generates multiple copies of eachsegment, e.g., two copies of each segment. The embedder 110A then embedsa different watermark in each copy, e.g., 0 is embedded in segment i inthe first copy, and 1 is embedded in segment i in the second copy. Whenthe client device receives a sequence of segments, for each segment, theclient device choses a particular copy (with the correspondingwatermark) based on the client device ID. For example, for segment i, ifa particular bit of the client device ID is 0, the client devicereceives the first copy of segment i with 0 embedded. On the other hand,if the particular bit is 1, the client device receives the second copywith 1 embedded.

In some embodiments, as will be described in further detail below withreference to FIG. 6, in headend based transformation, the transformer120A determines which transformations to apply and generates multiplecopies, e.g., two copies, for each segment and performs a differenttransformation on each of them. Each client device receives a sequenceof transformed segments. For each segment, the client device choses oneof the copies, e.g., based on the ID and/or randomly, etc. Further, insome embodiments, the transformer 120A aligns the start and the end ofthe transformation with the segment boundaries, e.g., by fading inand/or fading out at the beginning and the end of a segment, or byaligning the segments with a scene change. In some embodiments, at leastone of the start or the end of the first transformation is within arespective segment boundary of the segment boundaries. For example, thestart of the transformation can appear after the segment beginning, andthe transformation may end before the segment ends. Moreover, in someembodiments, when the resolution of each copy is different, the mediacontent is divided into other units, e.g minutes, instead of intosegments. In such embodiments, aligning the transformations includesaligning the transformations with the start and the end of each minute.As such, every copy includes one or more whole transformations (i.e., nopartial transformations).

The transformer 120A transforms each copy of the media content itemsbefore or after the embedder 110A embeds the watermarks in accordancewith various embodiments. In some embodiments, the transformer 120A isintegrated with an encoder so that the transformations are carried outin the headend 210A before, after, or during the encoding process. Assuch, when the transmitter 130A transmits multiple copies of thetransformed watermark embedded media content items, these copies aremisaligned and/or uncorrelated to resist collusion attacks.

In FIG. 2B, a client device 220B includes a receiver 102B for receivingone or more requests for one or more media content items and/or forreceiving one or more media content items, an embedder 110B (e.g., theembedder 110, FIG. 1) for applying single-step or other watermarkingtechniques to embed watermarks in media content items on the clientdevice 220B, a transformer 120B (e.g., the transformer 120, FIG. 1) totransform the media content items, and one or more transmitters 130B(e.g., the transmitter 130, FIG. 1) in accordance with some embodiments.In some embodiments, the one or more transmitters 130B sends one or morerequests to a server (e.g., a headend) for a base copy of a mediacontent item. In some embodiments, for client based watermarking, e.g.,the single-step watermarking, multiple client devices receive the samemedia content, e.g., the same video, from the server. The embedder 110Bon each of the client devices embeds a watermark, which represents itsID. In some embodiments, the embedder 110B embeds the watermark in fullin the payload in each frame. In some other embodiments, the clientdevice embeds the watermark bit-by-bit.

In case the media content item is a video stream, in some embodiments,as will be described below with reference to FIG. 3, the transformer120B applies watermark like transformations, such as applying thesingle-step watermarking techniques in full on a single frame as atransformation of the frame. As such, in client based transformation,the client device 220B receives the media content, e.g., a video, andthe transformer 120B performs a transformation or a set oftransformations on the video. When the transformer 120B applies a set oftransformations, the transformations fade in and/or fade out or alignedwith scene change for a smooth transition between the transformations.When the transmitter 130B sends the frames to, for example, a renderingunit or module, each frame is transformed with an embedded watermark. Assuch, every client device 220B has its own variants, and copies fromdifferent client devices are misaligned and/or uncorrelated to resistcollusion attacks. In order to have a variety of transformations overtime, in some embodiments, the transformer 120 on the client device 220Balso changes a transformation method occasionally, sometimes, and/orperiodically. In the exemplary configuration shown in FIG. 2B, becausethe transformations are applied by the client device 220, there is noserver cost, scalability, or bandwidth constraint that limits the numberof transformations for the media content item.

In some embodiments, in case there are multiple client devices, thetransformer 120B on each client device 220B determines and chooses(e.g., randomly or pseudo-randomly) the transformations to be performed(or the parameters for the transformations to be used). Because thetransformations are applied randomly, statistically one can assume notall client devices connected to the colluder would have the sametransformation at least most of the time. In other words, thetransformations applied to the multiple copies are statisticallydifferent or satisfy a statistical performance criterion. For example,the statistical performance criterion may specify that the probabilityof the client devices have the same transformation during a thresholdamount of time is less than a threshold probability, e.g., p<0.01, etc.As such, the normative case is that the multiple copies used in acollusion attack would be misaligned.

In FIG. 2C, a server 230C includes a receiver 102C (e.g., the receiver102, FIG. 1) for receiving multiple requests for a base copy of a mediacontent item, an embedder 110C (e.g., the embedder 110, FIG. 1) forapplying two-step or other watermarking techniques to embed watermarksin media content items from the server 230C (e.g., a headend), atransformer 120C (e.g., the transformer 120, FIG. 1) to transform themedia content items, and a transmitter 130C (e.g., the transmitter 130,FIG. 1) for sending copies of transformed watermark embedded mediacontent items to client devices in accordance with some embodiments. Insome embodiments, in order to perform the two-step watermarkingtechniques, the embedder 110C includes a variants generator 232C toperform the preprocessing step and a sequence generator 234C to createthe bitstream using variants from the variants generator 232C. As such,when the transmitter 130C transmits multiple copies of the transformedwatermark embedded media content items, these copies are misalignedand/or uncorrelated to resist collusion attacks.

It should be noted that though FIG. 2C illustrates a single server 230C,components and/or functions of the server 230C can be distributed tomultiple devices. For example, while the variants generator 232C istypically implemented in the video encoding headend, the sequencegenerator 234 may be implemented in other components of the media chain,e.g., at an encoder, a packager, a multiplexer, an over-the-top (OTT)origin server, an OTT playlist server, a content distribution network(CDN) server (central or edge), or a client device.

As explained above, in order to perform a collusion attack, a colluderuses multiple copies (e.g., at least two) of aligned media contentitems. The collusion resistant techniques described herein modify themultiple copies of the media content items, such that the alignmentbecomes very difficult or impossible. This would either disable thecollusion action or result in a corrupted output after the collusion.The collusion resistant techniques described herein include applying avariety of transformations in each copy of the media content item inaccordance with some embodiments. Moreover, in some embodiments, thetransformer applies different transformations over time in order to makeit harder for the colluder to automatically identify thetransformations. As will be described below with reference to FIGS. 3-8,the transformations are designed to have a minor influence onvisibility. As such, there is no degradation of the viewing experiencefor legitimate users. More importantly, the transformations are notexpected to affect the watermark quality and detectability regardless ofwhat watermark technique is applied. On the other hand, when combiningmore than one copy of the media content item, the combination of two (ormore) different transformations either fails the collusion attack oryields to a very low-quality and/or corrupted copy of the media contentitem.

FIG. 3 is a block diagram 300 illustrating one transformation techniquein accordance with some embodiments. In some embodiments, one or morewatermarking techniques, e.g., single-step or two-step watermarking, canbe adopted for the purpose of transformations. In some embodiments, thetransformer (e.g., the transformer 120B, FIG. 2B) obtains a base copy310 of a media content item and chooses one or more watermarkingtechniques to embed one or more arbitrary identifiers in addition to thewatermark identifier. This is useful especially in the single-stepwatermarking, where watermarks are applied in full within an element,e.g., a picture, a page, or a frame. As a result, multiple variants areembedded in multiple copies for multiple client devices, i.e., everyclient device has its own variants. In the example shown in FIG. 3, anarbitrary identifier is embedded in each of the transformed watermarkembedded copies in addition to the embeded watermark, e.g., embeddingID₁ and WM₁ in copy 1 320-1, ID₂ and WM₂ in copy 2 320-2, ID_(x) andWM_(x) in copy x 320-x, ID_(y) and WM_(y) in copy y 320-y, . . . , etc.

In many cases, a watermark is imperceptible, e.g., a base copy and thewatermark embedded copy are perceptually indistinguishable. In somecases, a watermark is perceptible if its presence in the watermarkembedded copy is noticeable (e.g., digital on-screen graphics like anetwork logo, content bug, codes, opaque images). Even in such cases, onmedia content items, such as videos and images, the watermarks are oftenmade transparent and/or translucent for the convenience of consumers,since the watermarks may block a portion of the view. As such, adaptingwatermarking techniques to embed the arbitrary identifiers, thearbitrary identifiers embedded in the copies 320 would have the sameperceptibility as the embedded watermarks. Accordingly, thetransformation by embedding an arbitrary identifier in each of thecopies 320 would not degrade the viewing. In other words, relative to aviewing performance characterization of the base copy 310, each of thetransformed watermark embedded copies 320 satisfies a viewingperformance criterion. For example, in case the embedded arbitraryidentifier and the embedded watermark in copy x 320-x are imperceptible,the base copy 310 and the transformed watermark embedded copy areperceptually indistinguishable. Accordingly, the viewing performancecharacterization of copy x 320-x satisfies a viewing performancecriterion, which is the same as the viewing performance characterizationof the base copy 310.

On the other hand, a colluder may initiate a collusion attack bycombining at least two copies of the media content item, e.g., combiningcopy 1 with embedded ID₁ and WM₁ 320-1 and copy 2 with embedded ID₂ andWM₂ using any collusion attack techniques. However, comparing and/orsynchronizing copy 1 320-1 and copy 2 320-2 would fail, because inaddition to the watermarks, the arbitrary identifiers are also differentamong different copies. Thus, colluding two different variants that aremisaligned and/or uncorrelated would yield to a low-quality mediacontent item 330.

FIG. 4 is a diagram 400 illustrating various transformation techniquesin accordance with some embodiments. The various transformationtechniques can be implemented by a transformer on a server (e.g., thetransformer 120A in FIG. 2A or the transformer 120C in FIG. 2C) or aclient device. Further, the transformation techniques are independent ofwatermarking techniques. As such, the collusion resistant techniques canbe implemented in conjunction with any watermarking techniques.

In FIG. 4, a base copy 410 of an image is shown. In some embodiments,transformations of the base copy 410 include cropping and/or padding ofpixels. For example, removing a threshold number of pixels from twoopposite edges (same number of pixels) and padding with black transformthe base copy 410 by introducing variants to the image. Becausemodifying several pixels within a threshold number is hardly noticeableby human vision, there is no degradation of viewing experience and thetransformed image satisfies a viewing performance criterion. In someembodiments, the transformations further include randomly selecting oneor more edges and/or the number of pixels to crop and/or pad to vary thedegree of transformation by cropping and/or padding.

In some embodiments, transformations of the base copy 410 includingadding small variations in brightness. In some embodiments, changes tothe brightness characteristics are below one or more thresholds so thatthe perceived brightness changes are subtle. In some embodiments, thebrightness transformations are gradual, e.g., fading in and fading out.In some embodiments, the brightness transformation changes over time oraccording to different random profiles. In some embodiments,transformations of the base copy 410 include randomly picking adifferent color depth within a threshold range or varying between an8-bit or 10-bit depths.

In some embodiments, transformations of the base copy 410 includerandomizing the location of a banner 420 inserted in the encoder withsmall variations, e.g., moving the location of the banner 420 within athreshold distance. For example, the transformer may randomly vary thelocation of a scoring banner in a sports game over time, e.g.,occasionally, sometimes, and/or periodically changing the locationwithin a threshold distance from the location of the scoring banner inthe base copy 410.

In some embodiments, transformations of the base copy 410 includerotating the display by small (e.g., −1, +1, or within a thresholddegree) and/or random degrees 0. In some embodiments, transformations ofthe base copy 410 includes scaling the image. For example, in a fillmode, the transformer stretches the image slightly (e.g., withinthreshold dimensions) so each copy would have a slightly differentimage. In another example, in a fit mode, the transformer creates smallvariations in the pillar width (e.g., within a threshold widthdeviation), thus slightly stretching the display between the pillars. Insome embodiments, the transformations of the base copy 410 includeshifting, such as moving the display rectangle so pixel (0, 0) would bein slightly different locations for different variants. In someembodiments, the shifting of pixel (0, 0) is within a threshold distancefrom the location of pixel (0, 0) of the base copy 410.

Because the transformations in accordance with various embodimentsdescribed herein are slight, the changes are generally not perceptibleby human eyes. As such, applying any of the transformation techniques ora combination of the various watermarking techniques illustrated in FIG.4 would not degrade the viewing experience for legitimate users. On theother hand, when a colluder conducts a collusion attack by combining atleast two copies of the media content item, because of thetransformations, the combined copy would have low quality. As shown inFIG. 4, the image in the combined copy would appear to be blurry. Inanother example, as shown in FIG. 1, applying the tiling alterationtechnique, the basket image in the combined copy 150 has distortionand/or is disjointed along the tiling line.

FIG. 5 is a diagram 500 illustrating various video transformationtechniques in accordance with some embodiments. In some embodiments, thetransformations include introducing time delay to a video stream. Forexample, assuming a base copy of a video stream starts at time to andincludes a plurality of frames, e.g., Frames (X_(i))={X₁, X₂, X₃, X₄, .. . , X_(n)}. The transformer generates copy 1 510 by replicating thebase copy and optionally applying one or more transformations asdescribed above with reference to FIGS. 3 and 4.

In some embodiments, the transformer generates copy 2 520 by replicatingthe base copy, e.g., Frames (Y_(i))=Frames (X_(i)), and introducing aslight delay in time, e.g., starting at time t₁ that is within athreshold amount of time from t₀. The slight delay is not perceptible inmost cases. However, in case a colluder obtains copy 1 510 and copy 2520 to attempt collusion attacks, the misalignment between copy 1 510and copy 2 520 would result in a low-quality or corrupted video.

In some embodiments, the transformations include varying frame rates.For example, the transformer generates copy 3 530 by replicating thebase copy, e.g., Frames (Z_(i))=Frames (X_(i)), and varying (e.g.,lowering or increasing) the frame rate within a threshold amount. Theslight modification of the frame rate is not perceptible in most cases,e.g., lower the frame rate when the content has little motion. However,in case a colluder obtains copy 1 510 (and/or copy 2 520) and copy 3 530to attempt collusion attacks, the misalignment between the copies wouldresult in low quality or corrupted video.

FIG. 6 illustrates an exemplary collusion resistant system 600 wheretransformations are applied in a headend in accordance with someembodiments. In some embodiments, a headend 605 (e.g., the headend 210A,FIG. 2A, or the server 230C, FIG. 2C) includes a transformer (e.g., thetransformer 120A, FIG. 2A, or the transformer 120C) for transformingmedia content items. In some embodiments, in case the media content itemis a stream (e.g., a video stream or an audio stream), the headend 605generates multiple variants of the stream, where each variant includes adifferent transformation (or the same transformation but with differentparameters) as well as a different watermark (not shown in FIG. 6).

For example, in FIG. 6, segment 1 610-A and segment 1 610-B are twodifferent variants of segment 1 (as indicated by different patterns ofshading), e.g., by applying different transformations as described abovewith reference to FIGS. 4 and 5. Likewise, segment 2 620-A and segment 2620-B are two different variants of segment 2; segment 3 630-A andsegment 3 630-B are two different variants of segment 3, and segment 4640-A and segment 4 640-B are two different variants of segment 4, etc.When two users, e.g., user 1 and user 2, request the media content item,the headend 605 streams variants of the segments to the users inresponse to the requests, e.g., streaming segment 1 610-A, segment 2620-B, segment 3 630-B, and segment 4 640-A to user 1 and streamingsegment 1 610-B, segment 2 620-A, segment 3 630-B, and segment 4 640-Bto user 2, etc. As such, the streams received by user 1 and user 2 areuncorrelated to resist collusion attacks.

In some embodiments, the headend 605 changes the transformations as timegoes in order to have a variety of transformations over time. Forexample, following a segment-based approach (or a set of segments basedapproach), where the headend 605 applies a different transformation toeach segment (or to each set of the segments). For each segment, theuser receives one transformed copy of the segment. The two streamsgenerated in response to two requests may include certain portions thatare the same. However, along the timeline, the streams are different. Asshown in FIG. 6, both user 1 and user 2 receive the same transformedsegment 3. However, the stream received by user 1 is different from thestream received by user 2 over time. In some embodiments, each variantof each segment also includes a different watermark. In suchembodiments, each stream to a user includes both a unique watermarksequence and one or more unique transformations.

The transformation techniques shown in FIGS. 4-6 are illustrative andnot exhaustive. Other transformation techniques that satisfy the viewingperformance criterion may be applied in place of or in combination withthe techniques shown in FIGS. 4-6. Further, the collusion resistantsystems described herein in accordance with various embodiments canapply one transformation technique or a combination of transformationtechniques. Additionally, the transformation techniques and/or theparameters for a respective transformation technique may vary over timeto resist collusion attacks without degrading the viewing experience forlegitimate users.

In some embodiments, the transformations shown in FIGS. 4-6 areperformed in the uncompressed domain. Some transformations do not incuran additional cost from re-encoding, such as the time delaytransformation as shown in FIG. 5. In FIG. 5, to generate and transmitcopy 2 520 with the start time t₁, the transformer replicates the basecopy frames, e.g., Frames (Y_(i))=Frames (X_(i)), and delays thetransmission of copy 2 520 without performing any re-encoding. Toperform other transformations, multiple encoders (e.g., one for eachcopy) may be deployed in the headend and/or the client device. In someembodiments, to avoid duplication of encoders, the transformer enablestransformations on compressed media content items or othercost-effective methods for encoders.

For example, the transformations as shown in FIG. 4 can share thepre-analysis part of the media content item and the decoder in case oftranscoding to reduce the amount of calculation. In particular, for thecropping and/or padding transformation, the transformer can re-use themotion vectors and the mode decisions of the non-transcoded versions ofa media content item. In another example, for the banner locationtransformation, the transformer can re-use the motion vectors and themode decision for macroblocks that do not refer to regions associatedwith the banner. In cases where motion vectors are re-calculated (e.g.,the brightness transformation and/or the rotation transformation, etc.),the transformer can re-calculate the initial motion vectors based on themotion vectors of the non-transformed version (e.g., the base copy 410,FIG. 4) and re-use the mode decision of the non-transformed version asthe initial mode. The transformer can then use the initial motion vectorand mode to find a better motion vector and mode in a reduced searchspace for the transformed copy. Following this approach, the encodereffort is significantly reduced. In cases where the transformer doeshave a separate encoder in connection with the transformations (e.g.,the frame rate transformation as shown in FIG. 5), the separate encodercan still share the pre-analysis part of the video encoder and decoderin case of transcoding for cost savings.

FIG. 7 is a diagram 700 illustrating one embodiment of transitioningbetween transformations with fading in and fading out in accordance withsome embodiments. As explained above, in some embodiments, the collusionresistant system described herein can change the chosen transformationand can have multiple transformations. To ensure the viewing experiencefor legitimate users, in some embodiments, the transformations areapplied gradually to avoid low-frequency effects. In some embodiments,for headend-based transformations, the transformer (e.g., thetransformer 120A, FIG. 2A, or the transformer 120C, FIG. 2C), appliesthe transformation on chunk boundaries. In some embodiments, thetransformer (e.g., the transformer 220B, FIG. 2B) starts at the chunkboundary with some transformation (or without transformation). Thetransformer then gradually increases the magnitude of the transformationto the middle point of the segment, and gradually decreases themagnitude before moving to another transformation in a gradual manner.

For example, in FIG. 7, time t₀ and time t₁ mark the chunk boundaries.At the beginning of the chunk boundary, the segment has notransformation at time t₀ 710-0. The transformer gradually increases themagnitude of the transformation. In the case of rotation transformation,as shown in FIG. 7, the rotation degree increases from κ degree to Θ₁ attime t₀+x 710-x. The increase of the rotation degree continues until themiddle point of the segment, e.g., the transformation at time (t₁−t₀)/2710-m peaks with the rotation degree Θ₂ greater than Θ₁ at time t₀+x.Once the middle point of the segment has passed, the transformergradually reduces the magnitude of the transformation, e.g., therotation degree decreases from Θ₂ at time (t₁−t₀)/2 710-m to Θ₃ at timet₀+y 710-y. At the end of the chunk boundary, the segment has notransformation at time t₁ 710-1.

FIG. 8 is a diagram 800 illustrating aligning transitions oftransformations with scene changes in accordance with some embodiments.In some embodiments, in order to provide a viewing experience tolegitimate users that satisfies a viewing performance criterion, thetransformer aligns the start and the end of the transformation withscene changes. The idea is based on the observation that human eyes arenot sensitive enough to distinguish between two differenttransformations if an image is significantly changed.

For headend-based transformations, transformations are often applied onsegment-based resolution (or applied on a set of segments). As such, insome embodiments, the segment boundaries are aligned with scene changesto provide a smooth transition. For client-based transformations, insome embodiments, the client device receives a signal when a scenechange occurs (possibly an ahead-of-time notification). On the scenechange, the transformer (e.g., the transformer 120B, FIG. 2B) chooses adifferent transformation.

For example, boundaries of segment y 810-y are aligned with the startand the end of a scene 820. Prior to the scene 820, the transformer, forexample, applies the rotation transformation to segment x 810-x. At thestart of the scene 820, the transformer chooses a differenttransformation, e.g., not rotating or scaling, and the chosentransformation ends at the end of the scene 820. Because the image insegment y 810-y has significantly changed relative to segment x 810-x,the transformation changes at the beginning of the scene 820 areindistinguishable. Likewise, at the end of the scene 820, when thetransformer chooses a different transformation, e.g., scaling of segmentz 810-z, the transformation changes are indistinguishable.

FIGS. 9A and 9B are flowcharts illustrating a collusion resistant method900 in accordance with some embodiments. As represented by block 910, insome embodiments, the method 900 is performed at a device including aprocessor, e.g., for executing instructions for the request handling,the watermark embedding, the applications of transformations, and thetransmission handling, and a non-transitory memory for storing theinstructions and/or storing media content items. In some embodiments,the device includes at least one of a headend or a client device.

In other words, as represented by block 912, in some embodiments, thedevice is a headend (e.g., the headend 210A, FIG. 2A), which includesone or more receivers (e.g., the receiver 102A, FIG. 2A) for receivingrequests, one or more embedders (e.g., the embedder 110A, FIG. 2A) forembedding watermarks, one or more transformers (e.g., the transformer120A, FIG. 2A) for applying transformations to copies of media contentitems, and one or more transmitters (e.g., the transmitter 120A, FIG.2A). In some other embodiments, as represented by block 914, the deviceis one or more client devices (e.g., the client device 220B, FIG. 2B),which includes one or more receivers (e.g., the receiver 102B), one ormore transmitters (e.g., the transmitter 130B, FIG. 2B) for transmittingrequests and sending transformed watermark embedded media content itemsfor display, and one or more transformers (e.g., the transformer 120B,FIG. 2B) for transforming media content items. In some embodiments, thedevice includes a plurality of devices to perform the method 900.Further, one or more components of the embedder and the transformer canbe implemented in other components of the media chain. For example,though FIG. 2C illustrates the sequence generator 234C being located onthe server 230C, the sequence generator 234C can be implemented, e.g.,at the encoding, packaging, or multiplexing, at an OTT origin server, onan OTT playlist server, on a CDN server (central or edge), or in aclient device. As such, the collusion resistant method 900 is flexiblein headend-based and/or client-based transformation and independent ofthe watermark techniques, whether the transformation and/or thewatermarking are performed at the headend or the client device.

Briefly, the method 900 includes receiving a first request for a basecopy of a media content item; determining, in response to the firstrequest, a first transformation based on a combination of a statisticalperformance criterion and a viewing performance criterion that is setrelative to a view performance characterization of the base copy of themedia content item; generating a first copy of the media content item byreplicating and applying a first transformation to the base copy of themedia content item, wherein the first copy of the media content itemsatisfies the viewing performance criterion, and the first copy of themedia content item is statistically different from the base copy (and/orother copies) of the media content item in accordance with thestatistical performance criterion; and causing transmission of the firstcopy of the media content item in combination with a first watermark forthe base copy of the media content item.

To that end, as represented by block 920, the method 900 begins withreceiving a first request for a base copy of a media content item. Insome embodiments, the method 900 further includes receiving a secondrequest for the base copy of a media content item. For example, in FIG.1, one or more client devices send multiple requests, e.g., request 1,request 2, . . . , request x, and request y, etc., for a base copy of amedia content item. In some embodiments, as represented by block 922,the media content item includes one or more of audio content, videocontent, image content, and text. As such, the collusion resistantmethod 900 is flexible and adaptive to tackle collusion attacks on anytype of media content.

Regardless of the type of media content item requested, the method 900continues, as represented by block 925, with the transformerdetermining, in response to the first request, a first transformationbased on a combination of a statistical performance criterion and aviewing performance criterion that is set relative to a view performancecharacterization of the base copy of the media content item. Variousmethods of generating transformed copies of the media content item areexplained below and shown in FIG. 9B. Using any of the varioustransformation methods described herein in accordance with embodiments,as shown in FIG. 1, each of the transformed watermark embedded copies140 satisfy a viewing performance criterion set relative to a viewingperformance characterization of the base copy, e.g., the viewerperceived differences between the transformed watermark embedded copies140 and the non-transformed media content item are negligible. Moreover,by applying the first transformation, the transformations applied by thetransformer satisfy a statistical performance criterion, e.g., theprobability of the transformations (including the first transformation)are the same during a threshold amount of time is less than a thresholdprobability.

As represented by block 930, the method 900 continues, with thetransformer generating a first copy of the media content item byreplicating and applying a first transformation to the base copy of themedia content item, wherein the first copy of the media content itemsatisfies the viewing performance criterion. For example, in FIG. 1, thetransformer 120 generates multiple copies 140 of the base copy 105 inresponse to the requests by replicating the base copy (e.g., anon-transformed copy of the media content item) and applyingtransformations. Various methods of generating transformed copies of themedia content item are explained below and shown in FIG. 9B. Using anyof the various transformation methods described herein in accordancewith embodiments, in FIG. 1, each of the transformed watermark embeddedcopies 140 satisfy a viewing performance criterion set relative to aviewing performance characterization of the base copy, e.g., the viewerperceived differences between the transformed watermark embedded copies140 and the non-transformed media content item are negligible. Forinstance, in FIG. 4, when shifting pixel (0, 0) within a thresholddistance, modifying a small number of pixels during cropping and/orpadding, slightly brightening or dimming, varying the color depth for asmall amount, rotating within a threshold angle range, and/or moving thelocation of the banner 420 within a threshold distance, etc., the slighttransformation is hardly noticeable. Thus, the transformed copysatisfies the viewing performance criterion set relative to the viewingperformance characterization of the base copy. As such, the collusionresistant method 900 preserves the quality of the media content item forlegitimate users.

Further, as represented by block 931, in some embodiments, the firstcopy of the media content item is statistically different from the basecopy and other copies of the media content item in accordance with thestatistical performance criterion. For example, although one copy mayhave no transformation at one time, the copy is statistically differentfrom the base copy of the media content item in accordance with thestatistical performance criterion, because other copies may includetransformations. In some embodiments, in accordance with the statisticalperformance criterion, each of the transformed watermark embedded copies140 is not only statistically different from the base copy of the mediacontent item, but also statistically different from previously generatedcopies of the media content item generated by the device. For example, aheadend may generate multiple copies of the media content item anddetermine different transformations to apply (including applying notransformations to one or more copies), so that the probability of thesemultiple copies have the same transformation within a threshold timewindow is less than a threshold probability. In another example,multiple client devices may each determine and apply transformation(s)to the copy it receives. Statistically, the copies among these multipleclient devices have different transformations at most of the time.

Still referred to FIG. 9A, the method 900 continues, as represented byblock 940, with the device causing transmission (e.g., by thetransmitter) of the first copy of the media content item in combinationwith a watermark in response to the first request for the base copy ofthe media content item. For example, in FIG. 1, copy 1 of transformedwatermark embedded media content item 140-1 is transmitted in responseto request 1. In some embodiments, as represented by block 942, thefirst watermark is combined with the first copy of the media contentitem before or after applying the first transformation to the base copyof the media content item. Because the transformations can be appliedbefore or after watermark embedding, the collusion resistant method 900is independent of the watermarking technique, e.g., whether embeddingthe watermark at the headend as shown in FIG. 2A or the client device asshown in FIG. 2B. Further, since the transformations have a minor effecton the media content item, applying transformation after embeddingwatermarks would not harm any watermark that meets the minimalrequirements for watermark robustness. As such, the collusion resistantmethod 900 does not degrade the detectability of the original watermark.

In some embodiments, the method 900 includes receiving a second requestfor the base copy of the media content item, and causing transmission ofa second copy of the media content item in response to the secondrequest for the base copy of the media content item, wherein the secondcopy of the media content item is statistically different from the firstcopy in accordance with the statistical performance criterion. Forexample, in FIG. 1, copy 2 of transformed watermark embedded mediacontent item 140-2 is transmitted in response to request 2. In anotherexample, in FIG. 3, multiple client devices may each determine and applytransformation(s) to the copy it receives, e.g., one client devicedetermines ID 1 to be embedded in copy 1 320-1 and another client devicedetermines ID 2 to be embedded in copy 2 320-2, etc. Statistically, thecopies 320 among the multiple client devices have differenttransformations at most of the time and the probability that the copies320 have the same transformation at least most of the time is less thana threshold probability.

In some embodiments, as represented by block 952, the second copy of themedia content item includes a second watermark that is different fromthe watermark, so that each copy includes a unique watermark tofacilitate piracy detection. For example, in FIG. 3, copy 1 320-1 caninclude watermark 1 that is different from watermark 2 embedded in copy2 320-2. In such embodiments, as represented by block 954, the secondcopy of media content item is generated by replicating and applying asecond transformation that is different from the first transformation tothe base copy of the media content item, where the second copy of themedia content item satisfies the viewing performance criterion inaccordance with some embodiments. For example, in FIG. 4, in addition tohaving different watermarks, the transformation to the copy sent to user1 is different from the transformation to the copy sent to user 2. Assuch, with each copy having both a unique watermark sequence and uniquetransformation, the multiple copies are misaligned to be robust againstcollusion attacks.

To ensure the uniqueness of each copy, the transformation is not limitedto different types of transformations. As represented by block 956, insome embodiments, the first transformation and the second transformationare of the same type with different transformation parameters. Forexample, when applying the time delay transformation as shown in FIG. 5,the time delay may vary for different copies. The varying time delay fordifferent copies makes each copy unique and causes misalignment amongmultiple copies to resist against collusion attacks. In someembodiments, the different transformation parameters include, but arenot limited to, different number of pixels cropped and/or padded,different brightness, different color depth, different banner locations,different rotation angles, different scaling aspect in fit or fill mode,different time delay, different coordinates, and/or different framerate, etc.

In some embodiments, as represented by block 958, the second copy isgenerated by replicating the base copy and embedding a second watermark.In such embodiments, when one copy is transformed and the other isnon-transformed or unaltered, the two copies are misaligned to becollusion resistant. In particular, for client-based transformations,the client device may start with no transformation. When starting withno transformation, the viewing performance characterization of the copyis the same as the base copy.

In some embodiments, as represented by block 960, to not downgrade theviewing experience for legitimate users, the method 900 provides smoothtransition between transformations by applying fading in and fading outtechniques. In some embodiments, generating the first copy of the mediacontent item by replicating and applying the first transformation to thebase copy of the media content item includes identifying a middle pointof a portion in the first copy of the media content item, increasing amagnitude of the first transformation until the middle point of theportion, and decreasing the magnitude of the first transformation pastthe middle point.

For example, as explained above in connection with FIG. 7, uponidentifying a middle point of a segment duration at time (t₁−t₀)/2. Thetransformer first gradually increases a magnitude of the rotationtransformation (e.g., increasing Θ) until the middle point of thesegment duration. The transformer then gradually decreases the magnitudeof the rotation transformation (e.g., decreasing Θ) past the middlepoint. Because of the gradual transformation, the transformed videosatisfies the viewing performance criterion set relative to the viewingperformance characterization of the base copy.

In some embodiments, as represented by block 970, to not downgrade theviewing experience for legitimate users, the method 900 provides smoothtransition between transformations by aligning transitions with a scenechange. In some embodiments, the method 900 further includes identifyinga scene change in the first copy of the media content item, andselecting a different transformation to apply to the first copy of themedia content item in accordance with the scene change. For example, asshown in FIG. 8, because the images in different scenes aresignificantly different, the human eye is not sensitive enough todistinguish the switching from the rotation transformation and then tothe scaling transformation along the segment boundaries. As such, thetransformed video satisfies the viewing performance criterion setrelative to the viewing performance characterization of the base copy.

Turning to FIG. 9B, FIG. 9 illustrates various transformation methodsfor generating a transformed watermark embedded copy represented byblock 930 (FIG. 9A). In some embodiments, as represented by block 932,the transformations can include, but are not limited to, a watermarklike transformation (FIG. 3), cropping and/or padding (FIG. 4),brightness, color, banner location (FIG. 4), rotation (FIG. 4), scaling(FIG. 4), time delay (FIG. 5), shifting (FIG. 4), and/or frame rate(FIG. 5) transformation.

For the watermark-like transformation, in some embodiments, applying afirst transformation includes embedding an arbitrary identifier in thebase copy to generate the first copy of the media content item. Forexample, as shown in FIG. 3, each of the copies 320 has an embeddedarbitrary identifier in addition to a unique watermark. Suchwatermark-like transformation is useful especially in single-stepwatermarking but is independent of the watermark technique, e.g., thetransformation can be applying in conjunction with the single-stepwatermark or two-step watermarking.

For other types of transformations, in some embodiments, the firsttransformation includes modifying one or more of elements, brightness,color, element location, display angle, scaling aspect, time delay,coordinates, and frame rate associated with transformations of the firstcopy of the media content item. For example, as shown in FIG. 4, thetransformer can apply one transformation selected from cropping and/orpadding, brightness, color, banner location, rotation, scaling, timedelay, shifting, and/or frame rate transformation. In some embodiments,the transformer can apply more than one type of transformation or applyvarying parameters of one type of transformation. Some transformationmethods may be more effective against certain types of collusionattacks. Multiple transformations can be applied so that the collusionresistant method 900 is robust, flexible, and adaptive to tackle anycollusion attacks.

In some embodiments, as represented by block 933, the firsttransformation is selected randomly or pseudo-randomly. For example,when applying transformation in the client device as shown in FIG. 2B,each client chooses, e.g., randomly or pseudo-randomly, thetransformation to be performed (or the parameters for thetransformations to be used). As such, the collusion resistant system hasthe ability to dynamically and un-predictably change the transformationstrategy against various collusion attacks.

In some embodiments, as represented by block 934, the method 900 furtherincludes receiving multiple requests for the base copy of the mediacontent item, and generating multiple copies of the media content itemby replicating and applying multiple transformations, wherein themultiple transformations applied to the multiple copies of the mediacontent item are statistically different. Because the transformationsare applied randomly, statistically, the client devices connected to thecolluder would not have the same transformation at least most of thetime. As such, the normative case is that the multiple copies used in acollusion attack will be misaligned, and the collusion resistant method900 is robust against any collusion techniques.

In some embodiments, as represented by block 935, generating the firstcopy of the media content item by replicating and applying the firsttransformation to the base copy of the media content item includesreplicating a subportion of the media content item to generate the firstcopy and applying the first transformation to the subportion of themedia content item. For example, in case the media content item is avideo, the subportion can be a segment, a set of segment, or the videostream. Further in such embodiments, as represented by block 936, insome embodiments, applying the first transformation to the base copyincludes for each subportion of the media content item (e.g., a segmentof a video), applying a different transformation. In other words, thecollusion resistant method 900 is flexible to apply transformations to aset of segments that can be one segment, e.g., a segment-based solution,more than one segment, or the video stream.

In one example, the set of segments can include the video stream, suchas applying a fill mode transformation to modify stretch slightly soeach client would have a slightly different image dimension to resistcollusion attacks. In the example shown in FIG. 6, the transformation isapplied segment-by-segment, so that each segment has a differenttransformation, and for each segment, the user receives one copy of thissegment. In order to have a variety of transformations over time, thetransformer changes transformations as time goes. As a result, the twocopies of the video stream as shown in FIG. 6 may not be different inevery point of time (e.g., segment 3 variant 630-B is in both copies),but along the timeline and over time, the two copies of the video streamare different to resist collusion attacks.

In some embodiments, as represented by block 937, applying the firsttransformation to the base copy of the media content item includesapplying the first transformation to the watermark, wherein the firsttransformation of the watermark satisfies a watermark robustnesscriterion. Since the transformations have a minor effect on the mediacontent item, any watermark that meets the minimal requirements forwatermark robustness would not be harmed as a result of thetransformations. Thus, the collusion resistant method 900 does notdegrade the watermark detectability.

In some embodiments, for cost savings, as represented by block 938,applying the first transformation to the base copy of the media contentitem includes reusing at least one of pre-analysis (e.g., motion vectorsand mode decisions) or a decoder associated with the base copy of themedia content item for transcoding the first copy.

While various aspects of implementations within the scope of theappended claims are described above, it should be apparent that thevarious features of implementations described above may be embodied in awide variety of forms and that any specific structure and/or functiondescribed above is merely illustrative. Based on the present disclosureone skilled in the art should appreciate that an aspect described hereinmay be implemented independently of any other aspects and that two ormore of these aspects may be combined in various ways. For example, anapparatus may be implemented and/or a method may be practiced using anynumber of the aspects set forth herein. In addition, such an apparatusmay be implemented and/or such a method may be practiced using otherstructure and/or functionality in addition to or other than one or moreof the aspects set forth herein.

It will also be understood that, although the terms “first,” “second,”etc. may be used herein to describe various elements, these elementsshould not be limited by these terms. These terms are only used todistinguish one element from another. For example, a first device couldbe termed a second device, and, similarly, a second device could betermed a first device, which changing the meaning of the description, solong as all occurrences of the “first device” are renamed consistentlyand all occurrences of the “second device” are renamed consistently. Thefirst device and the second device are both devices, but they are notthe same device.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of the claims. Asused in the description of the embodiments and the appended claims, thesingular forms “a”, “an”, and “the” are intended to include the pluralforms as well, unless the context clearly indicates otherwise. It willalso be understood that the term “and/or” as used herein refers to andencompasses any and all possible combinations of one or more of theassociated listed items. It will be further understood that the terms“comprises” and/or “comprising,” when used in this specification,specify the presence of stated features, integers, steps, operations,elements, and/or components, but do not preclude the presence oraddition of one or more other features, integers, steps, operations,elements, components, and/or groups thereof.

As used herein, the term “if” may be construed to mean “when” or “upon”or “in response to determining” or “in accordance with a determination”or “in response to detecting”, that a stated condition precedent istrue, depending on the context. Similarly, the phrase “if it isdetermined [that a stated condition precedent is true]” or “if [a statedcondition precedent is true]” or “when [a stated condition precedent istrue]” may be construed to mean “upon determining” or “in response todetermining” or “in accordance with a determination” or “upon detecting”or “in response to detecting” that the stated condition precedent istrue, depending on the context.

1. A method comprising: at a device including a processor and anon-transitory memory: receiving a first request for a base copy of amedia content item; determining, in response to the first request, afirst transformation based on a combination of a statistical performancecriterion and a viewing performance criterion that is set relative to aview performance characterization of the base copy of the media contentitem; generating a first copy of the media content item by replicatingand applying a first transformation to the base copy of the mediacontent item, wherein the first copy of the media content item satisfiesthe viewing performance criterion, and the first copy of the mediacontent item is statistically different from the base copy of the mediacontent item in accordance with the statistical performance criterion;and causing transmission of the first copy of the media content item incombination with a first watermark for the base copy of the mediacontent item.
 2. The method of claim 1, wherein the device includes atleast one of a headend or a client device.
 3. The method of claim 1,wherein the media content item includes one or more of audio content,video content, image content, and text.
 4. The method of claim 1,wherein the first watermark is combined with the first copy of the mediacontent item before or after applying the first transformation to thebase copy of the media content item.
 5. The method of claim 1, furthercomprising: receiving a second request for the base copy of the mediacontent item; and causing transmission of a second copy of the mediacontent item in response to the second request for the base copy of themedia content item, wherein the second copy of the media content item isstatistically different from the first copy in accordance with thestatistical performance criterion.
 6. The method of claim 5, wherein thesecond copy of the media content item includes a second watermarkdifferent from the first watermark.
 7. The method of claim 5, whereinthe second copy of media content item is generated by: replicating andapplying a second transformation, different from the firsttransformation to the base copy of the media content item, wherein thesecond copy of the media content item satisfies the viewing performancecriterion.
 8. The method of claim 7, wherein the first transformationand the second transformation are of same type with differenttransformation parameters.
 9. The method of claim 1, further comprisingaligning a start and an end of the first transformation with segmentboundaries.
 10. The method of claim 9, wherein at least one of the startor the end of the first transformation is within a respective segmentboundary of the segment boundaries.
 11. The method of claim 1, whereingenerating the first copy of the media content item by replicating andapplying the first transformation to the base copy of the media contentitem includes: identifying a middle point of a portion in the first copyof the media content item; increasing a magnitude of the firsttransformation until the middle point of the portion; and decreasing themagnitude of the first transformation past the middle point.
 12. Themethod of claim 1, further comprising: identifying a scene change in thefirst copy of the media content item; and selecting a differenttransformation to apply to the first copy of the media content item inaccordance with the scene change.
 13. The method of claim 1, whereinapplying the first transformation includes: embedding an arbitraryidentifier in the base copy to generate the first copy of the mediacontent item.
 14. The method of claim 1, wherein applying the firsttransformation includes modifying one or more of elements, brightness,color, element location, display angle, scaling aspect, time delay,coordinates, and frame rate associated with the first copy of the mediacontent item.
 15. The method of claim 1, further comprising: receivingmultiple requests for the base copy of the media content item; andgenerating multiple copies of the media content item by replicating andapplying multiple transformations, wherein the multiple transformationsapplied to the multiple copies of the media content item arestatistically different.
 16. The method of claim 1, wherein generatingthe first copy of the media content item by replicating and applying thefirst transformation to the base copy of the media content itemincludes: replicating a subportion of the media content item to generatethe first copy; and applying the first transformation to the subportionof the media content item.
 17. The method of claim 16, wherein applyingthe first transformation to the base copy includes: for each of thesubportion, applying a different transformation.
 18. The method of claim1, wherein applying the first transformation to the base copy of themedia content item includes applying the first transformation to thefirst watermark, wherein the first transformation of the first watermarksatisfies a watermark robustness criterion.
 19. The method of claim 1,wherein applying the first transformation to the base copy of the mediacontent item includes: reusing at least one of pre-analysis or a decoderassociated the base copy of the media content item for transcoding ofthe first copy.
 20. A system comprising: one or more receivers operableto receive a first request from a first client device for a base copy ofa media content item; one or more transformers operable to: determine,in response to the first request, a first transformation based on acombination of a statistical performance criterion and a viewingperformance criterion that is set relative to a view performancecharacterization of the base copy of the media content item; generate afirst copy of the media content item by replicating and applying a firsttransformation to the base copy of the media content item, wherein thefirst copy of the media content item satisfies the viewing performancecriterion, and the first copy of the media content item is statisticallydifferent from the base copy of the media content item in accordancewith the statistical performance criterion; and one or more transmittersto cause transmission of the first copy of the media content item incombination with a watermark for the base copy of the media contentitem.
 21. A method comprising: at a device including a processor and anon-transitory memory: receiving a first request for a base copy of amedia content item; determining a first transformation based on acombination of a statistical performance criterion and a viewingperformance criterion that is set relative to a view performancecharacterization of the base copy of the media content item; generatinga first copy of a media content item by replicating and applying thefirst transformation to the base copy of the media content item, whereinthe first copy of the media content item satisfies the viewingperformance criterion, and the first copy of the media content item isstatistically different from the base copy of the media content item andpreviously generated copies of the media content item generated by thedevice in accordance with the statistical performance criterion; andtransmitting the first copy of the media content item in combinationwith a first watermark to one or more display devices.
 22. The method ofclaim 21, wherein generating the first copy of the media content item byreplicating and applying the first transformation to the base copy ofthe media content item includes: identifying a middle point of a portionin the first copy of the media content item; increasing a magnitude ofthe first transformation until the middle point of the portion; anddecreasing the magnitude of the first transformation past the middlepoint.
 23. The method of claim 21, further comprising: identifying ascene change in the first copy of the media content item; and selectinga different transformation to apply to the first copy of the mediacontent item in accordance with the scene change.
 24. The method ofclaim 21, wherein applying the first transformation includes: embeddingan arbitrary identifier in the base copy to generate the first copy ofthe media content item.
 25. The method of claim 21, wherein applying thefirst transformation includes modifying one or more of elements,brightness, color, element location, display angle, scaling aspect, timedelay, coordinates, and frame rate associated with the first copy of themedia content item.
 26. The method of claim 21, wherein generating thefirst copy of the media content item by replicating and applying thefirst transformation to the base copy of the media content itemincludes: replicating a subportion of the media content item to generatethe first copy; and applying the first transformation to the subportionof the media content item.
 27. The method of claim 26, wherein applyingthe first transformation to the base copy includes: for each of thesubportion, applying a different transformation.
 28. A systemcomprising: one or more receivers operable to receive a first requestfor a base copy of a media content item; one or more transformersoperable to: determine a first transformation based on a combination ofa statistical performance criterion and a viewing performance criterionthat is set relative to a view performance characterization of the basecopy of the media content item; and generate a first copy of a mediacontent item by replicating and applying the first transformation to thebase copy of the media content item, wherein the first copy of the mediacontent item satisfies the viewing performance criterion, and the firstcopy of the media content item is statistically different from the basecopy of the media content item and previously generated copies of themedia content item generated by the device in accordance with thestatistical performance criterion; and one or more transmitters operableto transmit the first copy of the media content item in combination witha first watermark to one or more display devices.
 29. The system ofclaim 28, wherein: the one or more receivers are further operable toreceive a second request for the base copy of the media content item;and the one or more transmitters are further operable to transmit asecond copy of the media content item in response to the second requestfor the base copy of the media content item to the one or more displaydevices, wherein the second copy of the media content item isstatistically different from the first copy in accordance with thestatistical performance criterion.
 30. The system of claim 29, whereinthe one or more transformers are further operable to generate the secondcopy of media content item by: replicating and applying a secondtransformation, different from the first transformation to the base copyof the media content item, wherein the second copy of the media contentitem satisfies the viewing performance criterion.